Priority Mutual Exclusion: Specification and Algorithm
نویسندگان
چکیده
Mutual exclusion is a fundamental problem in distributed computing. In one well known variant of this problem, which we call priority mutual exclusion, processes have priorities and the requirement is that, whenever the critical section becomes vacant, the next occupant should be the process that has the highest priority among the waiting processes. Instead of first capturing this vague, but intuitively appealing requirement by a rigorously specified condition, earlier research rushed into proposing algorithms. Consequently, as we explain in the paper, none of the existing algorithms meet the reasonable expectations we would have of an algorithm that claims to respect process priorities. This paper fixes this situation by rigorously specifying the priority mutual exclusion problem and designing an efficient algorithm for it. Our algorithm supports an arbitrary number of processes and, when configured to support m priority levels (m can be any natural number), the algorithm has O(m) RMR complexity on both DSM and CC machines.
منابع مشابه
An Improved Token-Based and Starvation Free Distributed Mutual Exclusion Algorithm
Distributed mutual exclusion is a fundamental problem of distributed systems that coordinates the access to critical shared resources. It concerns with how the various distributed processes access to the shared resources in a mutually exclusive manner. This paper presents fully distributed improved token based mutual exclusion algorithm for distributed system. In this algorithm, a process which...
متن کاملThe Priority Ceiling Protocol: Formalization and Analysis Using PVS∗
Common real-time operating systems rely on priority-based, preemptive scheduling. Resource sharing in such systems potentially leads to priority inversion: processes of high priority can be prevented from entering a critical section and be delayed by processes of lower priority. Since uncontrolled priority inversion can cause high-priority processes to miss their deadlines, a real-time operatin...
متن کاملImprovement of the distributed algorithms of mutual exclusion by introducing the priority
Most of distributed mutual exclusion algorithms do not use the notion of priority. To solve the distributed prioritized mutual exclusion problem, F. Mueller[9] has already prioritized a token and tree based algorithm. The goal of this paper is to show the introduction of priority in an other token-based algorithm. This work can be considered an improvement of F.
متن کاملA Comparison of the Mutual Exclusion Features in Ada and the Real-Time Specification for Java TM
A concurrent program generally comprises a collection of threads1 that interact cooperatively, either directly or through shared data objects. In the latter case the sharing needs to be implemented by some mechanism that ensures mutually exclusive access, or possibly “concurrent read / exclusive write”. Ada and the Real-Time Specification for Java have taken different approaches to mutual exclu...
متن کاملDesign of a Mutual Exclusion and Deadlock Algorithm in PCBSD FreeBSD
— This paper shows the implementation of mutual exclusion in PCBSD-FreeBSD operating systems on SMPng environments, providing solutions to problems like investment priority, priority propagation, interlock, CPU downtime, deadlocks, between other. Mutex Control concept is introduced as a solution to these problems through the integration of the scheduling algorithm of multiple queues fed back an...
متن کامل